Nacitani souboru

Otázka od: Ludek ZITA

1. 12. 2003 1:53

Zdravim.
Jsem postaveny pred ukol ziskavat z nejak formatovanych textovych souboru
nejake udaje a vim, ze tyhle udaje jsou vzdy nekde na zacatku souboru nekde
v prvnich 10 radcich (nebo lepe receno do 1000 znaku od zacatku souboru)
Souboru je asi cca 2000 a jsou ve vzdalene siti (pripojeni pres ISDN 64kB) a
ja k nim mam pristup pres sdileni souboru TCP/IP (W2000). Velikost souboru
je max 50 kb, typicky 4-10 kb.
Soubory sice nejsou nejak zvlast velke, ale preci jenom pri rychlosti linky
by mi pomohlo nacitat jenom ten zacatek a hnedle bych na tom byl cca petkrat
rychlejsi. (Momentalne je to 8Mb dat celkem) takze
rozdil mezi tahanim 8Mb a 2Mb by byl znat. No a protoze ten 1Kb zacatku je
pro jistotu trochu nadneseny, tak pokud bych treba umel cist po nejakych
paketech, treba 128 bytu, pak bych se vysledku dobral mozna jeste o polovinu
rychleji.
Jak na to jit ? Na "protistrane" bohuzel nic nemuze bezet (jinak samozrejme
Synapse a TCP spojeni).

Ludek


Odpovedá: Petr Vones

1. 12. 2003 2:03

From: "Ludek ZITA" <konference@sales.cz>
> Soubory sice nejsou nejak zvlast velke, ale preci jenom pri rychlosti linky
> by mi pomohlo nacitat jenom ten zacatek a hnedle bych na tom byl cca petkrat
> rychlejsi. (Momentalne je to 8Mb dat celkem) takze

A jakym zpusobem ty soubory ctes ted ? Nemam moznost zkusit MS File sharing
ale kdyz ctes jen par bytu ze streamu tak to jako vzdy nacita cely soubor ?

Petr Vones


Odpovedá: Ludek ZITA

1. 12. 2003 2:53


----- Original Message -----
From: "Petr Vones" <pvones@mbox.vol.cz>

> From: "Ludek ZITA" <konference@sales.cz>
> > Soubory sice nejsou nejak zvlast velke, ale preci jenom pri rychlosti
linky
> > by mi pomohlo nacitat jenom ten zacatek a hnedle bych na tom byl cca
petkrat
> > rychlejsi. (Momentalne je to 8Mb dat celkem) takze
>
> A jakym zpusobem ty soubory ctes ted ? Nemam moznost zkusit MS File
sharing
> ale kdyz ctes jen par bytu ze streamu tak to jako vzdy nacita cely soubor
?
>

Ahoj.
No ja zatim shromazduji informace jak na to a protoze o vnitrnim fungovani
sdileni souboru nemam prilis sajn, tak jsem se nejprve zeptal.
Myslis tedy ze mam zkusit nco jako :

var
  Buff: array[0..128] of char;
begin
  with TFileStream.Create('\\Server\Path\Filename', fmShareDenyNone) do
  try
    repeat
     Read(Buff, 128);
    until Nalezeno(Buff) or Eof
    finally
  Free;
end;

Ludek


Odpovedá: Petr Vones

1. 12. 2003 15:34

From: "Ludek ZITA" <konference@sales.cz>
> Myslis tedy ze mam zkusit nco jako :
>
> var
> Buff: array[0..128] of char;
> begin
> with TFileStream.Create('\\Server\Path\Filename', fmShareDenyNone) do
> try
> repeat
> Read(Buff, 128);
> until Nalezeno(Buff) or Eof
> finally
> Free;
> end;

Tak nejak bych ocekaval ze to bude fungovat.

Petr Vones